package com.audaque.springboot.foshanupload.web.mpdemo.mpgt.dao;


import com.audaque.springboot.foshanupload.core.model.qo.IdQo;
import com.audaque.springboot.foshanupload.core.model.qo.page.Page;
import com.audaque.springboot.foshanupload.web.mpdemo.mpgt.model.kbo.SysUserMpgtKbo;
import com.audaque.springboot.foshanupload.web.mpdemo.mpgt.model.pojo.SysUserMpgtPojo;
import com.audaque.springboot.foshanupload.web.mpdemo.mpgt.model.qo.SysUserMpgtQo;

import java.util.Collection;
import java.util.List;


public interface SysUserMpgtDao {


    String insert(SysUserMpgtPojo pojo, Boolean ignoreDuplicateExceptionYn) throws Exception;

    String insertBatch(List<SysUserMpgtPojo> pojoList, Boolean ignoreDuplicateExceptionYn) throws Exception;

    String insertBatch(Collection<SysUserMpgtPojo> pojoList, int batchSize, Boolean ignoreDuplicateExceptionYn) throws Exception;


    void update(SysUserMpgtPojo pojo) throws Exception;

    void delete(IdQo idQo) throws Exception;

    Page<SysUserMpgtPojo> queryAndCount(SysUserMpgtKbo sysUserMpgtKbo, SysUserMpgtQo sysUserMpgtQo) throws IllegalAccessException;


    List<SysUserMpgtPojo> queryList(SysUserMpgtKbo sysUserMpgtKbo, SysUserMpgtQo sysUserMpgtQo) throws IllegalAccessException;

    SysUserMpgtPojo queryItem(SysUserMpgtKbo sysUserMpgtKbo, SysUserMpgtQo sysUserMpgtQo) throws IllegalAccessException;

    SysUserMpgtPojo queryItem(String id) throws Exception;

    Integer count(SysUserMpgtQo sysUserMpgtQo);
}
